using FreeSql.DatabaseModel;using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Reflection;
using System.Threading.Tasks;
using Newtonsoft.Json;
using FreeSql.DataAnnotations;

namespace LdtJudge.DataEngine.Model.DataModel.SystemtableModel {

	[JsonObject(MemberSerialization.OptIn), Table(DisableSyncStructure = true)]
	public partial class Dic_TableColumn {

		[JsonProperty, Column(IsPrimary = true, IsIdentity = true)]
		public int Col_ID { get; set; }

		[JsonProperty]
		public int? Tbl_ID { get; set; }

		[JsonProperty, Column(DbType = "varchar(50)")]
		public string Col_DefaultValue { get; set; }

		[JsonProperty, Column(DbType = "varchar(255)")]
		public string Col_DefineParseClassName { get; set; }

		[JsonProperty, Column(DbType = "varchar(50)")]
		public string Col_FormatType { get; set; }

		[JsonProperty]
		public int? Col_IsDefineParse { get; set; }

		[JsonProperty]
		public int? Col_IsDocuLabelProperty { get; set; } = 0;

		[JsonProperty]
		public int? Col_IsIdentity { get; set; }

		[JsonProperty]
		public int? Col_IsPK { get; set; }

		/// <summary>
		/// 是否顺序字段
		/// </summary>
		[JsonProperty]
		public int? Col_IsSerialField { get; set; }

		[JsonProperty]
		public int? Col_Length { get; set; }

		[JsonProperty, Column(StringLength = 50)]
		public string Col_Name { get; set; }

		[JsonProperty, Column(StringLength = 50)]
		public string Col_NameChinese { get; set; }

		[JsonProperty, Column(DbType = "decimal(18,1)")]
		public decimal? Col_SerialNumb { get; set; }

		[JsonProperty, Column(StringLength = 50)]
		public string Col_Type { get; set; }

		[JsonProperty]
		public int? IsCommonFields { get; set; }

		[JsonProperty, Column(DbType = "varchar(1024)")]
		public string MatchKeyWord { get; set; }

		[JsonProperty, Column(StringLength = 500)]
		public string SourceContent { get; set; }

		[JsonProperty, Column(DbType = "varchar(50)")]
		public string SourceType { get; set; }

		[JsonProperty]
		public DateTime? UpdateTime { get; set; }

	}

}
